const express = require('express')
const app = express()
const md5 = require('md5')

// 解决办法跨域
app.use(require('cors')())


// 为了能够接收 POST 方法的参数
// 引入包，解析 POST 中 body 的数据
const bodyParser = require('body-parser')
// 注册为全局中间件
app.use(bodyParser.urlencoded({ extended: true }))

// 1 引入 mysql
const mysql = require('mysql')
// 2 创建一个新的连接对象
var db = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'root',
    database: 'shop_goods'
})
// 3 连接 mysql
db.connect()

/*          接口路由代码  **********/
// req：接收用户提交的参数
// res：给前端返回数据
// 获取轮播图
app.get('/api/v1/main_ad_images', (req, res) => {
    let sql = "select shop_image from shop_swipe"
    db.query(sql, (err, data) => {
        if (err) {
            res.json({
                'ok': 0,
                'error': err
            })
        } else {
            res.json({
                'ok': 1,
                'data': data
            })
        }
    })
})
// 获取分类
app.get('/api/v1/index_categories', (req, res) => {
    let sql = "select cat_name from shop_categories"
    db.query(sql, (err, data) => {
        if (err) {
            res.json({
                'ok': 0,
                'error': err
            })
        } else {
            res.json({
                'ok': 1,
                'data': data
            })
        }
    })
})
// 获取首页列表
app.get('/api/v1/index_goods', (req, res) => {
    let sql = "select id,goods_name,price,image from shop_index_goods"
    db.query(sql, (err, data) => {
        if (err) {
            res.json({
                'ok': 0,
                'error': err
            })
        } else {
            res.json({
                'ok': 1,
                'data': data
            })
        }
    })
})
// 购物车接口
app.get('/api/v1/goods', (req, res) => {
    let id = req.query.id
    console.log(id)
    id = id.split(',')
    let whenhao = []
    id.forEach(v => {
        whenhao.push('?')
    })
    whenhao = whenhao.join(',')
    let sql = `select * from shop_index_goods where id in(${whenhao})`
    db.query(sql, id, (err, data) => {
        if (err) {
            res.json({
                'ok': 0,
                'error': err
            })
        } else {
            res.json({
                'ok': 1,
                'data': data
            })
        }
    })
})
// 启动服务器
app.listen(9999, () => {
    console.log('成功！监听：127.0.0.1:9999!')
})